Multi-level memory cell utilizing measurement time delay as the characteristic parameter for level definition

ABSTRACT

A computer program product for operating a memory cell and memory array. The computer program product of memory cell operation entails receiving a request to read a binary value stored in the memory cell. A pre-charging operation pre-charges a bit-line capacitor in an electronic circuit formed by the memory cell to a pre-charge voltage. A word-line in the electronic circuit is then activated. A discharging operation discharges the bit-line capacitor through the said memory cell in the electronic circuit to the word-line. Additionally, an electron discharge time measurement is started when the word-line is activated. The electron discharge time measurement is stopped when the voltage level in the bit-line falls below a pre-defined reference voltage. A determining operation determines the binary value from the measured electron discharge time.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a divisional application of U.S. patent application Ser. No. 11/857,321 titled “MULTI-LEVEL MEMORY CELL UTILIZING MEASUREMENT TIME DELAY AS THE CHARACTERISTIC PARAMETER FOR LEVEL DEFINITION” filed Sep. 18, 2007.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to operation of memory storage systems and more particularly to data storage in memory storage systems using electron discharge times within a memory cell through an intrinsic resistor-capacitor circuit.

2. Description of Background

Typical semiconductor computer memories are fabricated on semiconductor substrates consisting of arrays of large number of physical memory cells. In general, one bit of binary data is represented as a variation of a physical parameter associated with a memory cell. Commonly used physical parameters include threshold voltage variation of Metal Oxide Field Effect Transistor (MOSFET) due to the amount of charge stored in a floating gate or a trap layer in non-volatile Electrically Erasable Programmable Read Only Memory (EEPROM), or resistance variation of the phase change element in Phase-change Random Access Memory (PRAM).

Increasing the number of bits to be stored in a single physical semiconductor memory cell is an effective method to lower the manufacturing cost per bit. Multiple bits of data can also be stored in a single memory cell when variations of the physical parameter can be associated with multiple bit values. This multiple bits storage memory cell is commonly known as a Multi-Level Cell (MLC). Significant amount of effort in computer memory device and circuit designs is devoted to maximize the number of bits to be stored in a single physical memory cell. This is particularly true with storage class memory such as popular non-volatile Flash memories commonly used as mass storage devices.

The basic requirement for multiple bit storage in a semiconductor memory cell is to have the spectrum of the physical parameter variation to accommodate multiple non-overlapping bands of values. The number of bands required for an n-bit cell is 2^(n). A 2-bit cell needs 4 bands, a 3-bit cell needs 8 bands and so forth. Thus, the available spectrum of a physical parameter in a semiconductor memory cell is typically the limiting factor for multiple bit memory storage.

In addition to the limiting spectrum width, the ability for a memory controller or memory device to program or read a characteristic parameter in a memory cell diminishes as the number of levels in a memory cell increases. Factors such as electrical noise, sense voltage disturbance, and spectrum width all interfere with the accuracy of a characteristic parameter value read from a memory cell. It is desirable to devise a method to program and read a characteristic parameter to many distinct levels, while minimizing the perturbation to the parameter during read/write processes involving the memory cells.

SUMMARY OF THE INVENTION

An exemplary embodiment of the present invention is a computer program product for operating a memory cell in which a variation of the characteristic parameter of the memory cell affects the effective resistance of the memory cell. The memory cell is configured to represent a multi-bit binary value. The memory cell, for example, can store a characteristic parameter which affects the effective resistance of the memory cell. The effective resistance of the memory cell, in turn, affects the time required for voltage to be discharged through an electronic circuit formed, at least partially, by the memory cell. The varying electron discharge times are associated with the binary values.

The computer program product of memory cell operation entails receiving a request to read a binary value stored in the memory cell. A pre-charging operation pre-charges a node in an electronic circuit formed, at least partially, by the memory cell to a pre-charge voltage. A word-line in the electronic circuit is then activated. Additionally, an electron discharge time measurement is started when the select device is activated. The electron discharge time measurement is stopped when the voltage level in the node falls below a pre-defined reference voltage, such that the pre-defined reference voltage is a fraction of the pre-charge voltage. A determining operation determines the binary value from the measured electron discharge time.

BRIEF DESCRIPTION OF THE DRAWINGS

The subject matter which is regarded as the invention is particularly pointed out and distinctly claimed in the claims at the conclusion of the specification. The foregoing and other objects, features, and advantages of the invention are apparent from the following detailed description taken in conjunction with the accompanying drawings in which:

FIG. 1 illustrates a particular embodiment of a memory array in accordance with the present invention.

FIG. 2 illustrates a particular embodiment of an electronic circuit in accordance with the present invention.

FIG. 3 illustrates electron discharge times relative to resistance in a memory cell.

FIG. 4 illustrates an electron discharge time distribution in a memory array in accordance with the present invention.

FIG. 5 illustrates read operation flow in accordance with one embodiment of the present invention.

The detailed description explains the preferred embodiments of the invention, together with advantages and features, by way of example with reference to the drawings.

DETAILED DESCRIPTION OF THE INVENTION

The present invention will be described with reference to FIG. 1-5. When referring to the figures, like elements shown throughout are indicated with like reference numerals.

FIG. 1 illustrates a memory system 102 according to one embodiment of the present invention. The memory system 102 includes a memory array 104, a controller unit 106, a writing unit 108, a detecting unit 110, and an output unit 112.

The memory array 104 contains a plurality of memory cells 116, with each memory cell 116 forming, at least partially, an electronic circuit 118. In a particular embodiment of the invention, the electronic circuit 118 is a resistor-capacitor circuit. The memory cells 116 may be packaged as individual memory cells 116 in the memory array 104 or they may be packaged as memory units 114 comprised of a plurality of memory cells 116. Furthermore, the controller unit 106, the writing unit 108, the detecting unit 110, and the output unit 112 may be separately packed or incorporated with the memory array 104.

The memory cells 116 are not limited to a particular memory storage technology. Those skilled in the art will recognize that different memory technologies use different characteristic parameters to represent data. For example Phase Change Memory (PCM) and Resistive Random Access Memory (RRAM) technology use resistance variation as a characteristic parameter to represent binary data. Further examples of characteristic parameters contemplated by the present invention include the number of electrons in the floating gate of a MOSFET, which is measured as a shift in the MOSFET's threshold voltage (Flash memory), and the induced magnetization of a ferromagnetic layer, which is measured as electrical resistance of the memory cell (MRAM). In all these cases and other similar embodiments, it is possible to associate the characteristic parameter of the memory cell with an effective resistance of the memory cell, the effective resistance defined as the ratio of a properly chosen voltage to the current that flows through the memory cell when that voltage is applied across it.

Each memory cell 116 in the memory array 104 is configured to represent at least two binary values. Each binary value is assigned a target discharge time. The target discharge time is the approximate time it takes for the voltage in the electronic circuit 118 to drop to a predetermined level. In a particular embodiment of the invention, the electronic circuit 118 is a resistor-capacitor circuit. The effective resistance of the memory cell forms the resistor and the intrinsic capacitance of the metal line (or bit-line) accessing the memory cell forms the capacitor for the said resistor-capacitor circuit. For example, the characteristic parameter stored in PCM memory cells 116 is the crystalline/amorphous phase of the phase change material. The amorphous phase of the memory cell 116 creates a relatively high resistance in the electronic circuit 118 which causes a longer electron discharge time. The crystalline phase of a PCM memory cell 116 has a relatively low resistance in the electronic circuit 118 which results in a shorter electron discharge time. The different lengths of the electron discharge times can be measured and a target can be made for the electron discharge times in the electronic circuit 118. These different target discharge times are then assigned to each of the possible binary value represented in the memory cells 116.

In one embodiment of the present invention, the controller unit 106 forms the electronic circuit 118 with a target memory cell 116. Additionally, the controller unit 106 also assigns the different target discharge times to each of the possible binary values represented in the memory cells 116 of the memory array 104.

The characteristic parameter storage in memory cells 116 is performed by the controller unit 106 and the writing unit 108. A specific binary value is requested by, for example, a Central Processing Unit (CPU) of a computer, to be represented by the target memory cell 116. The writing unit 106 then writes the characteristic parameter in the target cell. In one embodiment, this is done by determining the target discharge time and recursively writing the characteristic parameter in the target memory cell 116 by a pre-defined algorithm and measuring the electron discharge time until the electron discharge time is substantially equal to the target discharge time.

In a particular embodiment of the invention, a request is made by the CPU to retrieve the binary value represented by the target memory cell 116. The controller unit 106 forms an electronic circuit 118 with the target memory cell 116. The electronic circuit 118 is pre-charged to a pre-charge voltage and then discharged. At the beginning of the discharge, the detecting unit 110 begins a time measurement. Once the voltage falls to a predetermined level (which is a fraction of the pre-charge voltage) the detecting unit 110 ends the time measurement.

The output unit 112 compares the electron discharge time to the target discharge times and outputs the binary value associated with the target discharge time closest to the electron discharge time measured by the detecting unit 110. In one embodiment of the present invention, the output unit 112 utilizes statistical methods, such as maximum likelihood estimators, in determining the target discharge time closest to the measured electron discharge time.

Turning to FIG. 2, the electronic circuit 118 of the memory array is shown in more detail. The electronic circuit 118 for the selected memory cell 116 is comprised of a bit-line 202, a bit-line capacitor 204, a resistor 206, a word-line 208, a reference voltage source 210, a comparator 212 and an access device 214. The access device can be a MOSFET or a PN junction diode. The intrinsic capacitance of the bit-line 202 is represented by the bit-line capacitor 204. The bit-line capacitor 204 is connected to the word-line 208 through the effective resistance of the memory cell modeled by the resistor 206 and the access device 214. The comparator 212 is connected to the reference voltage source 210 which is set to the predetermined voltage level. When the bit-line voltage and reference voltage are equal, the comparator 212 signals to stop the timer measuring the discharge time.

The resistor 206 and capacitor 204 include, respectively, the inherent resistance and inherent capacitance in the memory cell. In a particular embodiment of the invention, the resistance value of the memory cell depends on the characteristic parameter value. For example, as stated above for the PCM memory cells, the characteristic parameter is the crystalline/amorphous state of the phase change material. A highly amorphous state of the phase change material creates a higher resistance and a highly crystalline state of the phase change material results in a lower resistance. Also stated above, the resistor 206 is not limited to one particular type of characteristic parameter.

In one embodiment of the invention, the memory cell is read by first pre-charging the bit-line capacitor 204 to a predetermined voltage level. The electron discharge time measurement begins when the word-line 208 is activated which causes the charge stored in the bit-line capacitor 204 to discharge through the resistor 206 and the select device 214. Using the PCM example again, the higher resistance of amorphous phase change material will result in a longer electron discharge time than the lower resistance of crystalline phase change material. The comparator 212 receives the bit-line voltage from the bit-line 202 and the reference voltage from the reference voltage source 210. When the bit-line voltage drops to the reference voltage, the time measurement ends.

In another embodiment of the invention, where the memory element is a floating gate MOSFET, the charge stored in the gate oxide is the characteristic parameter. The effective resistance of the memory element is the ratio of the voltage applied between the drain and source terminals of the MOSFET to the current flowing in response to that applied voltage through the transistor. As described herein, the binary value represented by the memory cell is determined by measuring the discharge time through the effective R-C circuit.

FIG. 3 illustrates a voltage drop chart for the bit-line voltage. The chart illustrates the electron discharge time in the bit-line for a first resistance level 308 containing an arbitrary resistance, and a second resistance level 310 containing a resistance three times of the first. Time 304 (in nanoseconds) is shown on the x-axis and voltage level 306 relative to the bit-line pre-charge voltage is on the y-axis.

The voltage level 306 with respect to time 304 can be calculated by the formula, V(t)=V(0)·exp[−t/(R _(x) C)], x=1, . . . , n. Here, V(t) is the voltage level 306 at time t, V(0) is the pre-charge voltage, R is the resistance level of the memory cell dependent on the characteristic parameter stored in the memory cell, C is the capacitance of the circuit, and n is the number of characteristic parameter levels possibly stored in the memory cell.

As described above, a predetermined voltage level 312 is set in the circuit as a fraction of the pre-charge voltage. In this arbitrary example, the predetermined voltage level 312 is set at 0.4V(0) and V(0)=1. As shown, memory cells set to the first resistance level 308 take 10 nanoseconds for the voltage to drop to the predetermined voltage level 312, while memory cells set to the second resistance level 310 take 30 nanoseconds for the voltage to drop to the predetermined voltage level 312. These electron discharge times 314 are measurably different and can be set as target discharge times associated with binary values. Thus, the memory cells can be read using these electron discharge times 314 instead of detecting the characteristic parameter stored in the memory cells.

Turning to FIG. 4, an electron discharge time distribution for a collection of memory cells incorporating the effect of electrical noise and variations in the intrinsic parameters of the discharge circuit is shown. Time (in nanoseconds) 404 is on the x-axis and the number of memory cells 406 with a particular electron discharge time is on the y-axis. Note that the electron discharge time distribution 402 shows a particular memory system with eight levels. Those skilled in the art will realize that a system with more than one level may be implemented in accordance with the present invention.

As mentioned above, in a particular embodiment of the invention, the writing unit recursively writes the characteristic parameter to the memory cell so that the electron discharge time of the memory cell is substantially equal to the target discharge time associated with the binary value being represented by the memory cell. In practice however, the characteristic parameter values form Gaussian distribution curves 408 centered about the target discharge time. This is typically due to natural variations during memory cell manufacturing and characteristic parameter value shifts as a result of environmental factors over time.

The memory system can use the distribution curves 408, or a target discharge time range, as representation of binary values. The binary value represented by a specific memory cell can be outputted even if the electron discharge time is not equal to any target discharge time. The electron discharge time can be fitted into the closest distribution curve 408 with statistical methods known to those skilled in the art and the binary value represented by the distribution curve 408 can be read from the memory cell. For example, a memory cell discharge time centered at 10 nsec can be assigned a binary value of “000”. The next discharge time distribution, centered at 30 nsec, is assigned a binary value of “001”, and so on.

FIG. 5A illustrates storage operations 502 in an embodiment of the invention. The process flow beings at assigning operation 506. At the assigning operation 506, different target discharge times are assigned to every possible binary value represented by memory cells in the system. In one particular embodiment, the controller unit is assigned the target time delays to the binary values. As mentioned above, the times assigned to the binary values are across ranges so that electron discharge times that are not exactly equal to the closest target discharge time can be still considered equivalent to the target discharge time. After the target discharge times have been assigned to the binary values, control moves to receiving operation 508.

At the receiving operation 508, the memory system receives a request from the CPU to store a specific binary value. Additionally, the CPU or controller unit typically provides a memory address for the memory array to store the binary value. After the target memory cell has been identified and the binary value has been chosen, control passes to determining operation 510.

At the determining operation 510, the target time delay corresponding to the binary value being stored is determined. In one embodiment of the invention, the target time delay can be determined by either the writing unit or the controller unit. Various methods may be used to correlate binary values to target delay times. For example, a lookup table may be used to map binary values to target delay times. After the determining operation 510 is complete, control moves to storing operation 512.

At the storing operation 512, a characteristic parameter value is stored in the memory cell such that the electron discharge time through the said memory cell is substantially equal to the target discharge time. In one embodiment, this might involve a recursive algorithm, where characteristic parameter values are recursively stored the target memory cell and the electron discharge times are read until the electron discharge time is substantially equal to the target discharge time associated with the binary value being stored. Those skilled in the art will realize this can be done with a simple circuit where the characteristic parameter value is stored and the electron discharge time is measured. If the electron discharge time is not equal to the target discharge time a different characteristic parameter value is stored to the memory cell. After the correct characteristic parameter value has been stored the storage operations 502 end.

FIG. 5B illustrates the read operations 503 in an embodiment of the invention. The process flow begins at receiving operation 514. At the receiving operation 514, the system receives a request from the CPU to read a particular memory cell or to acquire information stored in the memory array. The CPU or controller unit typically provides the memory address of the memory cell(s) that need to be read by the system. After the target memory cell or cells have been identified the control passes to pre-charging operation 516.

At the pre-charging operation 516, the system pre-charges the bit-line capacitor in the electronic circuit formed, at least partially, by the target memory cell to a predetermined voltage. Additionally, the word-line is turned off during the pre-charge operation 516 so that the charge does not pass through the memory cell and into the word-line. After the bit-line capacitor has been pre-charged, the control passes to activating operation 518.

At the activating operation 518, the word-line is activated. In one embodiment the pre-charge voltage is turned off and the trailing edge of the pre-charge voltage turns on the access device which activates the word-line. As mentioned above, the access device can be a MOSFET or a PN junction diode. After the word-line is activated the control passes to discharging operation 520.

At the discharging operation 520, the bit-line capacitor discharges the pre-charge voltage through the memory cell and access device, and to the word-line. Simultaneously, when the discharging operation 520 begins, a start timing operation 522 begins. The start timing operation 522 starts the electron discharge time measurement when the bit-line capacitor begins discharging through the circuit. After the bit-line capacitor discharges the pre-charge voltage and an electron discharge time measurement has begun, control passes to stop timing operation 524.

At the stop timing operation 524, the electron discharge time measurement ends when the bit-line voltage falls below a predetermined level. In one embodiment, as mentioned above, a comparator is connected to a reference voltage source and when the bit-line voltage is equal to the reference voltage, the comparator triggers the end of the electron discharge time measurement. Additionally, the reference voltage may vary according to the number of levels one may store in a memory cell. After the time measurement has ended, control passes to determining operation 526.

At the determining operation 526, the electron discharge time measured is compared to the target discharge times associated with each possible binary value stored in the memory cell. The target discharge time closest to the electron discharge time is chosen and the binary value associated with the target discharge time is retrieved from the target memory cell. Those skilled in the art may recognize that statistical methods such as maximum likelihood estimators may be employed in identifying the target discharge time closest to the measured electron discharge time. The process flow ends when the binary value has been retrieved from the target memory cell.

Those skilled in art will appreciate that the various illustrative logical blocks, modules, circuits, and algorithm steps described in connection with the embodiments disclosed herein may be implemented as electronic hardware, computer software, or combinations of both. To clearly illustrate this interchangeability of hardware and software, various illustrative components, blocks, modules, circuits, and steps have been described above generally in terms of their functionality. Whether such functionality is implemented as hardware or software depends upon the particular application and design constraints imposed on the overall system. Skilled artisans can implement the described functionality in varying ways for each particular application, but such implementation decisions should not be interpreted as causing a departure from the scope of the present invention.

The various illustrative logical blocks, modules, and circuits described in connection with the embodiments disclosed herein can be implemented or performed with a general purpose processor, a digital signal processor (DSP), an application specific integrated circuit (ASIC), a field programmable gate array (FPGA) or other programmable logic device, discrete gate or transistor logic, discrete hardware components, or any combination thereof designed to perform the functions described herein. A general purpose processor can be a microprocessor, conventional processor, controller, microcontroller, state machine, etc. A processor can also be implemented as a combination of computing devices, e.g., a combination of a DSP and a microprocessor, a plurality of microprocessors, one or more microprocessors in conjunction with a DSP core, or any other such configuration. In addition, the term “processing” is a broad term meant to encompass several meanings including, for example, implementing program code, executing instructions, manipulating signals, filtering, performing arithmetic operations, and the like.

The steps of a method or algorithm described in connection with the embodiments disclosed herein can be embodied directly in hardware, in a software module executed by a processor, or in a combination of the two. A software module can reside in RAM memory, flash memory, ROM memory, EPROM memory, EEPROM memory, registers, hard disk, a removable disk, a CD-ROM, a DVD, or any other form of storage medium known in the art. A storage medium is coupled to the processor such that the processor can read information from, and write information to, the storage medium. In the alternative, the storage medium may be integral to the processor. The processor and the storage medium can reside in an ASIC. The ASIC can reside in a user terminal. In the alternative, the processor and the storage medium can reside as discrete components in a user terminal.

The modules can include, but are not limited to, any of the following: software or hardware components such as software object-oriented software components, class components and task components, processes, methods, functions, attributes, procedures, subroutines, segments of program code, drivers, firmware, microcode, circuitry, data, databases, data structures, tables, arrays, or variables.

Having described preferred embodiments for multi-level memory cell utilizing measurement discharge time as the characteristic parameter for level definition (which are intended to be illustrative and not limiting), it is noted that modifications and variations can be made by persons skilled in the art in light of the above teachings. It is therefore to be understood that changes may be made in the particular embodiments disclosed which are within the scope and spirit of the invention as outlined by the appended claims. Having thus described aspects of the invention, with the details and particularity required by the patent laws, what is claimed and desired protected by Letters Patent is set forth in the appended claims. 

1. A computer program product comprising a computer useable medium including a computer readable program for operating a memory cell in which a variation of the characteristic parameter of the memory cell affects the effective resistance of the memory cell, the computer readable program comprising computer code to: receive a request to read a binary value stored in the memory cell; pre-charge a bit-line capacitor in an electronic circuit formed, at least partially, by the memory cell to a pre-charge voltage; activate a word-line in the electronic circuit; discharge the bit-line capacitor through the said memory cell in the electronic circuit to the word-line; start an electron discharge time measurement when the word-line is activated; stop the electron discharge time measurement when the voltage level in the bit-line falls below a pre-defined reference voltage; and determine the binary value from the measured electron discharge time; wherein the pre-defined reference voltage is a fraction of the pre-charge voltage.
 2. The computer program product of claim 1, wherein the computer code to determine the binary value from the electron discharge time includes: compare the measured electron discharge time with different target discharge times associated with the binary values; and determine the binary value stored in the memory cell with the associated target discharge time closest to the electron discharge time.
 3. The computer program product of claim 2, further comprising computer code to assign a different target discharge time for each of the possible binary values represented in the memory cell.
 4. The computer program product of claim 1, wherein the characteristic parameter in the memory cell is a resistance level.
 5. The computer program product of claim 1, wherein the characteristic parameter in the memory cell is an electron charge level.
 6. The computer program product of claim 1, wherein the electronic circuit includes an intrinsic resistor-capacitor circuit. 